package seqlist.动态数组实现;

import javax.crypto.spec.PSource;
import java.util.Arrays;

public class Test_MyArray {
    public static void main(String[] args) {
        //为了方便看效果，初始大小设为 3
        MyArray arr = new MyArray(3);

        arr.add(20);
        arr.add(20);
        arr.add(20);
        arr.add(20);

        System.out.println(arr);

       arr.removeAllValue(20);
        System.out.println(arr);

    }
}

/**
 * 接口：
 *  public void add(int val)  //添加数据功能： add
 *  public void add(int index, int val)// 在 index 索引处 插入 val
 *  public int getByValue(int val) //1.查询当前动态数组中第一个值为val的元素对应的索引
 *                                 //若不存在，返回 -1，表示当前val不存在
 *  public boolean contains(int val) //2. 第二种，查询当前动态数组中是否包含值为val的元素，
 *                                  //若存在返回true，否则返回false
 *
 *  public int get(int index) //3.第三种，查询当前动态数组中索引为index的元素值
 *
 *   public int set(int index, int newValue)//1.修改 index 位置的元素值改为 newValue，并返回修改前的值
 *   public int setVal(int oldVal, int newValue) //2.修改第一个值为 oldVal的元素改为 newValue,并返回索引下标
 *
 *  //1. 删除索引为 index 的元素,并返回删除前的元素
 *  public int remove(int index)
 *  //2. 头删 并返回删除的元素
 *  public int removeFirst()
 *
 *  //3. 尾删除 并返回删除的元素
 *  public int removeLast()
 *
 *  //4. 删除第一个为 val的元素,并返回是否删除成功
 *  public boolean removeValue(int val)
 *
 *  //5. 删除数组中所有为 val的元素
 *  public void removeAllValue(int val)
 */